package com.itheima.exeception;

import com.itheima.pojo.Result;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

 @RestControllerAdvice  // 表示该类是一个异常处理的类,该类中的方法处理完异常之后返回json
@Slf4j
public class GlobalExceptionHandler {
    /**
     * @ExceptionHandler(Exception.class) :定义方法要处理的异常类型.
     * @return
     */

    @ExceptionHandler(Exception.class) // 该方法处理Exception类型及其子类异常
    public Result doException(Exception e){ // 参数:获取要处理的异常对象
        log.info("异常信息:{}",e.getMessage());
        // 后端java代码异常:将来会把这个异常保存到文件中 数据库中... 通知后端人员修复BUG
        // 后端的java代码异常信息不会给用户看的,只会给用户一个友好的信息
        return Result.error("服务器正在开小差,呜呜呜");

    }
}
